Model Checking Linear Programs with Arrays
نویسندگان
چکیده
In previous work we proposed Linear Programs as a fine grained model for imperative programs, and showed how the model checking procedure used in SLAM can be generalised to a model checking procedure for Linear Programs. In this paper we show that our model checking procedure for linear programs can be extended in such a way to support the analysis of linear programs featuring a symbol for undefined values and conditional expressions. This extension is particularly important as it paves the way to the construction of model checking procedures for wider classes of imperative programs such as, e.g., linear programs with arrays. We provide a detailed account of a symbolic model checking procedure for this extended class of linear programs, discuss its implementation in the eureka tool, and present experimental results that confirm its effectiveness in the analysis of linear programs with arrays.
منابع مشابه
Abstraction and Acceleration in SMT-based Model-Checking for Array Programs
ion and Acceleration in SMT-based Model-Checking for Array Programs Francesco Alberti1, Silvio Ghilardi2, Natasha Sharygina1 1 Faculty of Informatics, University of Lugano, Switzerland 2 Università degli Studi di Milano, Milan, Italy Abstract Abstraction (in its various forms) is a powerful established technique in modelchecking; still, when unbounded data-structures are concerned, it cannot al...
متن کاملAn Approach to Checking Link Conflicts in the Mapping of Uniform Dependence Algorithms into Lower Dimensional Processor Arrays
ÐIn this paper, we propose an enumeration method to check link conflicts in the mapping of n-dimensional uniform dependence algorithms with arbitrary convex index sets into k-dimensional processor arrays. Previous methods on checking the link conflicts had to examine either the whole index set or the I/O spaces whose size are O N2n or O Nnÿ1, respectively, where N is the problem size of the n...
متن کاملDefinability of Accelerated Relations in a Theory of Arrays and Its Applications
ion and Acceleration in SMT-based Model-Checking for Array Programs Francesco Alberti1, Silvio Ghilardi2, Natasha Sharygina1 1 Faculty of Informatics, University of Lugano, Switzerland 2 Università degli Studi di Milano, Milan, Italy Abstract Abstraction (in its various forms) is a powerful established technique in modelchecking; still, when unbounded data-structures are concerned, it cannot al...
متن کاملA Theory of Arrays with set and copy
The theory of arrays is widely used in order to model main memory in program analysis, software verification, bounded model checking, symbolic execution, etc. Nonetheless, the basic theory as introduced by McCarthy is not expressive enough for important practical cases, since it only supports array updates at single locations. In programs, memory is often modified using functions such as memset...
متن کاملSoftware Model Checking Using Linear Constraints
Iterative abstraction refinement has emerged in the last few years as the leading approach to software model checking. In this context Boolean programs are commonly employed as simple, yet useful abstractions from conventional programming languages. In this paper we propose Linear Programs as a finer grained abstraction for sequential programs and propose a model checking procedure for this fam...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Electr. Notes Theor. Comput. Sci.
دوره 144 شماره
صفحات -
تاریخ انتشار 2006